﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Managed.Adb.Exceptions {
	/// <summary>
	/// An exception while installing a package on the device
	/// </summary>
	[Serializable]
	public class PackageInstallationException : Exception {
		/// <summary>
		/// Initializes a new instance of the <see cref="PackageInstallationException"/> class.
		/// </summary>
		public PackageInstallationException ( ) { }
		/// <summary>
		/// Initializes a new instance of the <see cref="PackageInstallationException"/> class.
		/// </summary>
		/// <param name="message">The message.</param>
		public PackageInstallationException ( string message ) : base ( message ) { }
		/// <summary>
		/// Initializes a new instance of the <see cref="PackageInstallationException"/> class.
		/// </summary>
		/// <param name="message">The message.</param>
		/// <param name="inner">The inner.</param>
		public PackageInstallationException ( string message, Exception inner ) : base ( message, inner ) { }
		/// <summary>
		/// Initializes a new instance of the <see cref="PackageInstallationException"/> class.
		/// </summary>
		/// <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the exception being thrown.</param>
		/// <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the source or destination.</param>
		/// <exception cref="T:System.ArgumentNullException">
		/// The <paramref name="info"/> parameter is null.
		///   </exception>
		///   
		/// <exception cref="T:System.Runtime.Serialization.SerializationException">
		/// The class name is null or <see cref="P:System.Exception.HResult"/> is zero (0).
		///   </exception>
		protected PackageInstallationException (
		System.Runtime.Serialization.SerializationInfo info,
		System.Runtime.Serialization.StreamingContext context )
			: base ( info, context ) { }
	}
}
